#include "comm.hpp"
#include "log.hpp"

int main()
{

    // logmessage(Info,"hello");

    Init init;
    Log log;
    log.Enable(ClassFile);

    // std::cout<<sum(1,1)<<std::endl;
    // std::cout<<sum(2,1,2)<<std::endl;
    // std::cout<<sum(3,1,2,3)<<std::endl;
    // std::cout<<sum(4,1,2,4,5)<<std::endl;
    // sum(1,2);
    // sum(1,2,3);
    // sum(1,2,3,4);
    // sum(1,2,4,5,6);

    // 打开信道
    int fd = open(FIFO_FILE, O_RDONLY);
    if (fd < 0)
    {
        log(Fatal, "error string: %s  error code: %d", strerror(errno), errno);
        exit(FIFO_OPEN_ERR);
    }
    // std::cout<<"server open file"<<std::endl;
    log(Info, "server open file, error string: %s  error code: %d", strerror(errno), errno);
    log(Warning, "server open file, error string: %s  error code: %d", strerror(errno), errno);
    log(Error, "server open file, error string: %s  error code: %d", strerror(errno), errno);
    log(Fatal, "server open file, error string: %s  error code: %d", strerror(errno), errno);
    log(Debug, "server open file, error string: %s  error code: %d", strerror(errno), errno);



    // 进行通信LK:
    while (true)
    {
        char buffer[1024] = {0};
        ssize_t x = read(fd, buffer, sizeof(buffer));
        if (x > 0)
        {
            buffer[x] = 0;
            std::cout << "client say# " << buffer << std::endl;
        }
        else if (x == 0)
        {
            //std::cout << "client quit, me to!" << std::endl;
            log(Debug, "client quit, me to! error string: %s  error code: %d", strerror(errno), errno);
            break;
        }
        else
            break;
    }

    // 关闭信道
    close(fd);

    return 0;
}